The invention relates to the field of context modeling, in particular, a system that reduces the number of clock cycles required to process a codeblock. Context modeling requires intensive computations for providing the proper context for an image, such as JPEG. One of the common tools that provide context modeling is the JPEG 2000. The JPEG 2000 provides processing of various codeblocks by providing code values to certain bits in a code block. In particular, a code block may contain approximately 4096 multi-bit wavelet coefficients. The JPEG 2000 processes each bit individually, thus requiring exhaustive computational resources for coding. For example, it would take approximately (4096xc3x9712) coding operations to process all the bits in the codeblock. Also, to determine distortions associated with a code block, it would require further computational resources to compute, thus, limiting the performance of the system.
Briefly, according to an aspect of the invention, there is provided a system for context modeling which reduces the number of clock cycles required to process a codeblock by considering multiple coefficients per clock cycle. The system divides a codeblock into 4xc3x974 arrays of wavelet coefficients, which are then transformed into contexts and decisions. These context and decisions are sent to an arithmetic coder. Considering the 16 coefficients from each 4xc3x974 array in parallel maximizes the throughput, thus, improving the performance of the system.
According to one aspect of the invention, a system for providing contextual information of a codeblock from a memory buffer is provided.
These and other objects, features and advantages of the present invention will become more apparent in light of the following detailed description of preferred embodiments thereof, as illustrated in the accompanying drawings.